Some information processing apparatuses (for example, PCs) connected to a Web server on a network are provided with a Web browser that displays operation screens provided from the Web server. When the Web browser issues a request to the Web server for an operation screen, a Web application provided to the Web server makes a response to the information processing apparatus, that is, it transmits hyper text markup language (HTML) file data for displaying the operation screen with the Web browser in accordance with the request from the apparatus. Upon receiving the response from the Web server, the Web browser analyzes the HTML file data, and generates the operation screen based on the description in the HTML file. Moreover, after the user inputs instruction data via the operation screen displayed with the Web browser, the Web browser notifies the provided instruction to the Web server. Then the Web application in the Web server having received the notification executes processing according to the provided instruction.
In recent years, some multi function peripherals (MFPs) each having a scanner and a printer are provided with the above Web browser. Such MFPs receive operation screen data from a Web server, display the operation screen with the Web browser in themselves by using the foregoing procedure, and then accept various instructions from a user.
According to Japanese Patent Laid-Open No. 2006-127503 (Literature 1), a Web server provides operation screens on which instruction data is inputted to use various functions provided to a MFP. That is, the user of the MFP inputs data describing an instruction to the MFP via an operation screen displayed with the Web browser. Then the received instruction is notified to the Web server according to the Web browser in the MFP. The Web server having received the notification requests the MFP to execute various kinds of processing according to contents of the instruction data inputted by the user. Thereafter, the MFP having received the request executes the requested processing. Thus there is no need for the MFP to hold all operation screens (menu data and so on) to be displayed on the display panel of the MFP, and the operation screens can be changed easily with the Web server.
Furthermore, according to Japanese Patent Laid-Open No. 2006-135644 (Literature 2), as in the case of Literature 1, a Web server provides operation screens on which instruction data is input to use various functions provided to a MFP. Likewise, the user of the MFP inputs data describing an instruction to the MFP. Then the provided instruction is notified to the Web server as a request by using the Web browser in the MFP. The Web server having received the notification creates a script in which various kinds of processing to be executed by the MFP are described based on the provided instruction. The created script is sent from the Web server to the MFP as a response to the request from the Web server.
In general, where a Web application provided to a Web server executes processing based on instruction data input via an operation screen displayed with a Web browser, another screen is displayed with the Web browser in accordance with the completion of the processing at the Web application. That is, upon completing processing at the Web application, the Web server generates HTML data describing an operation screen for notifying the processing completion or an operation screen for making the user perform the next operation. Then the generated HTML data is transmitted to the Web browser as a response to the request from the Web browser.
On the other hand, in some Web browsers provided to information processing apparatus such as PCs and MFPs, a time limit (timeout period) is set from the sending of a request to a Web server to the reception of a response from the Web server. When no response is made from the Web server within the timeout period, the Web browser executes timeout processing. Timeout processing refers to processing for invalidating an issued request. By invalidating the issued request, another request can be issued instead of waiting a response to the request, for example.
In Literature 1, however, in the case where the Web browser in the MFP sends a request to the Web server and then the Web server requests the MFP to execute processing based on the request, the following problems can be considered. That is, in Literature 1, the result of the processing executed by the MFP is notified to the Web server temporarily. Then the Web server having received the notification transmits HTML data describing the processing result to the Web browser as a response to the request having been sent initially from the Web browser. At that time, there is a possibility that it takes time for the MFP to execute the processing in accordance with the request from the Web server. In that case, a long period of time is required from the reception of the request from the Web browser at the Web server to the reception of the response at the Web browser, and thus the foregoing timeout processing is executed at the Web browser. As a result, it becomes impossible for the Web browser to receive the response from the Web server normally, and therefore the result of the processing executed by the MFP cannot be notified to the user.
On the other hand, in Literature 2, the Web browser in the MFP receives a request for processing execution from the Web server as a response to the request from the Web browser. In that case, no timeout occurs at the Web browser. In Literature 2, however, after the Web server has passed script data to the MFP as a response, another display cannot be produced with the Web browser on the instruction of the Web server. Because of this, during the execution of the script and after the execution, it is difficult to dynamically change display of processing at the MFP from the Web application.